\section{pdo\+\_\+list.\+c File Reference}
\label{pdo__list_8c}\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}


Ether\+C\+AT P\+DO list methods.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+init} (\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl)
\begin{DoxyCompactList}\small\item\em P\+DO list constructor. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+clear} (\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl)
\begin{DoxyCompactList}\small\item\em P\+DO list destructor. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+clear\+\_\+pdos} (\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl)
\begin{DoxyCompactList}\small\item\em Clears the list of mapped P\+D\+Os. \end{DoxyCompactList}\item 
uint16\+\_\+t \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+total\+\_\+size} (const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl)
\begin{DoxyCompactList}\small\item\em Calculates the total size of the mapped P\+DO entries. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+pdo\+\_\+t} $\ast$ \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo} (\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl, uint16\+\_\+t index)
\begin{DoxyCompactList}\small\item\em Add a new P\+DO to the list. \end{DoxyCompactList}\item 
int \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo\+\_\+copy} (\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl, const \textbf{ ec\+\_\+pdo\+\_\+t} $\ast$pdo)
\begin{DoxyCompactList}\small\item\em Add the copy of an existing P\+DO to the list. \end{DoxyCompactList}\item 
int \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+copy} (\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl, const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$other)
\begin{DoxyCompactList}\small\item\em Makes a deep copy of another P\+DO list. \end{DoxyCompactList}\item 
int \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+equal} (const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl1, const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl2)
\begin{DoxyCompactList}\small\item\em Compares two P\+DO lists. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+pdo\+\_\+t} $\ast$ \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo} (const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl, uint16\+\_\+t index)
\begin{DoxyCompactList}\small\item\em Finds a P\+DO with the given index. \end{DoxyCompactList}\item 
const \textbf{ ec\+\_\+pdo\+\_\+t} $\ast$ \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+const} (const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl, uint16\+\_\+t index)
\begin{DoxyCompactList}\small\item\em Finds a P\+DO with the given index and returns a const pointer. \end{DoxyCompactList}\item 
const \textbf{ ec\+\_\+pdo\+\_\+t} $\ast$ \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+by\+\_\+pos\+\_\+const} (const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl, unsigned int pos)
\begin{DoxyCompactList}\small\item\em Finds a P\+DO via its position in the list. \end{DoxyCompactList}\item 
unsigned int \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+count} (const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl)
\begin{DoxyCompactList}\small\item\em Get the number of P\+D\+Os in the list. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+print} (const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$pl)
\begin{DoxyCompactList}\small\item\em Outputs the P\+D\+Os in the list. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Ether\+C\+AT P\+DO list methods. 



\subsection{Function Documentation}
\mbox{\label{pdo__list_8c_ac6f343a6f07a1f817fc0c8820fbd5314}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+init@{ec\+\_\+pdo\+\_\+list\+\_\+init}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+init@{ec\+\_\+pdo\+\_\+list\+\_\+init}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+init()}
{\footnotesize\ttfamily void ec\+\_\+pdo\+\_\+list\+\_\+init (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl }\end{DoxyParamCaption})}



P\+DO list constructor. 


\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
\end{DoxyParams}


Definition at line 50 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_a30f05a34cf44b4d4f5bd47db39addb95}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+clear@{ec\+\_\+pdo\+\_\+list\+\_\+clear}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+clear@{ec\+\_\+pdo\+\_\+list\+\_\+clear}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+clear()}
{\footnotesize\ttfamily void ec\+\_\+pdo\+\_\+list\+\_\+clear (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl }\end{DoxyParamCaption})}



P\+DO list destructor. 


\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
\end{DoxyParams}


Definition at line 61 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_aff8b6a50972c7106457f0db17fbeaf6c}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+clear\+\_\+pdos@{ec\+\_\+pdo\+\_\+list\+\_\+clear\+\_\+pdos}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+clear\+\_\+pdos@{ec\+\_\+pdo\+\_\+list\+\_\+clear\+\_\+pdos}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+clear\+\_\+pdos()}
{\footnotesize\ttfamily void ec\+\_\+pdo\+\_\+list\+\_\+clear\+\_\+pdos (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl }\end{DoxyParamCaption})}



Clears the list of mapped P\+D\+Os. 


\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
\end{DoxyParams}


Definition at line 70 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_a464a658cdd2744493d9e63d033db4d36}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+total\+\_\+size@{ec\+\_\+pdo\+\_\+list\+\_\+total\+\_\+size}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+total\+\_\+size@{ec\+\_\+pdo\+\_\+list\+\_\+total\+\_\+size}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+total\+\_\+size()}
{\footnotesize\ttfamily uint16\+\_\+t ec\+\_\+pdo\+\_\+list\+\_\+total\+\_\+size (\begin{DoxyParamCaption}\item[{const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl }\end{DoxyParamCaption})}



Calculates the total size of the mapped P\+DO entries. 


\begin{DoxyRetVals}{Return values}
{\em Data} & size in byte. \\
\hline
\end{DoxyRetVals}

\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
\end{DoxyParams}


Definition at line 87 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_a19d7263b2fa2234b9d8301515528e834}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo@{ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo@{ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo()}
{\footnotesize\ttfamily \textbf{ ec\+\_\+pdo\+\_\+t}$\ast$ ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl,  }\item[{uint16\+\_\+t}]{index }\end{DoxyParamCaption})}



Add a new P\+DO to the list. 

\begin{DoxyReturn}{Returns}
Pointer to new P\+DO, otherwise an E\+R\+R\+\_\+\+P\+T\+R() code. 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
{\em index} & P\+DO index. \\
\hline
\end{DoxyParams}


Definition at line 117 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_a1e0dfffa35df484b25834003b447e888}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo\+\_\+copy@{ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo\+\_\+copy}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo\+\_\+copy@{ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo\+\_\+copy}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo\+\_\+copy()}
{\footnotesize\ttfamily int ec\+\_\+pdo\+\_\+list\+\_\+add\+\_\+pdo\+\_\+copy (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl,  }\item[{const \textbf{ ec\+\_\+pdo\+\_\+t} $\ast$}]{pdo }\end{DoxyParamCaption})}



Add the copy of an existing P\+DO to the list. 

\begin{DoxyReturn}{Returns}
0 on success, else $<$ 0 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
{\em pdo} & P\+DO to add. \\
\hline
\end{DoxyParams}


Definition at line 141 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_accc8112633a4b76efe8df355d1ad0ec8}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+copy@{ec\+\_\+pdo\+\_\+list\+\_\+copy}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+copy@{ec\+\_\+pdo\+\_\+list\+\_\+copy}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+copy()}
{\footnotesize\ttfamily int ec\+\_\+pdo\+\_\+list\+\_\+copy (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl,  }\item[{const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{other }\end{DoxyParamCaption})}



Makes a deep copy of another P\+DO list. 

\begin{DoxyReturn}{Returns}
0 on success, else $<$ 0 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
{\em other} & P\+DO list to copy from. \\
\hline
\end{DoxyParams}


Definition at line 177 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_ac05fc5ee2cf2afdf8b8501ef194c4002}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+equal@{ec\+\_\+pdo\+\_\+list\+\_\+equal}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+equal@{ec\+\_\+pdo\+\_\+list\+\_\+equal}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+equal()}
{\footnotesize\ttfamily int ec\+\_\+pdo\+\_\+list\+\_\+equal (\begin{DoxyParamCaption}\item[{const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl1,  }\item[{const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl2 }\end{DoxyParamCaption})}



Compares two P\+DO lists. 

Only the list is compared, not the P\+DO entries (i. e. the P\+DO mapping).


\begin{DoxyRetVals}{Return values}
{\em 1} & The given P\+DO lists are equal. \\
\hline
{\em 0} & The given P\+DO lists differ. \\
\hline
\end{DoxyRetVals}

\begin{DoxyParams}{Parameters}
{\em pl1} & First list. \\
\hline
{\em pl2} & Second list. \\
\hline
\end{DoxyParams}


Definition at line 207 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_ab08f37fcf3beda7d5425d49eca02c3be}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo@{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo@{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo()}
{\footnotesize\ttfamily \textbf{ ec\+\_\+pdo\+\_\+t}$\ast$ ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo (\begin{DoxyParamCaption}\item[{const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl,  }\item[{uint16\+\_\+t}]{index }\end{DoxyParamCaption})}



Finds a P\+DO with the given index. 

\begin{DoxyReturn}{Returns}
Search result, or N\+U\+LL. 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
{\em index} & P\+DO index. \\
\hline
\end{DoxyParams}


Definition at line 243 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_a0bffe5f1347255244f09ed77db2f4285}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+const@{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+const}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+const@{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+const}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+const()}
{\footnotesize\ttfamily const \textbf{ ec\+\_\+pdo\+\_\+t}$\ast$ ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+const (\begin{DoxyParamCaption}\item[{const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl,  }\item[{uint16\+\_\+t}]{index }\end{DoxyParamCaption})}



Finds a P\+DO with the given index and returns a const pointer. 

\begin{DoxyReturn}{Returns}
Search result, or N\+U\+LL. 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
{\em index} & P\+DO index. \\
\hline
\end{DoxyParams}


Definition at line 265 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_af7e65b2de439049f0f2b2cdfd1618187}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+by\+\_\+pos\+\_\+const@{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+by\+\_\+pos\+\_\+const}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+by\+\_\+pos\+\_\+const@{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+by\+\_\+pos\+\_\+const}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+by\+\_\+pos\+\_\+const()}
{\footnotesize\ttfamily const \textbf{ ec\+\_\+pdo\+\_\+t}$\ast$ ec\+\_\+pdo\+\_\+list\+\_\+find\+\_\+pdo\+\_\+by\+\_\+pos\+\_\+const (\begin{DoxyParamCaption}\item[{const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl,  }\item[{unsigned int}]{pos }\end{DoxyParamCaption})}



Finds a P\+DO via its position in the list. 

Const version.

\begin{DoxyReturn}{Returns}
Zero on success, otherwise a negative error code. 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
{\em pos} & Position in the list. \\
\hline
\end{DoxyParams}


Definition at line 289 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_a6cdf2367204e4db2dcdac339be67aaed}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+count@{ec\+\_\+pdo\+\_\+list\+\_\+count}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+count@{ec\+\_\+pdo\+\_\+list\+\_\+count}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+count()}
{\footnotesize\ttfamily unsigned int ec\+\_\+pdo\+\_\+list\+\_\+count (\begin{DoxyParamCaption}\item[{const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl }\end{DoxyParamCaption})}



Get the number of P\+D\+Os in the list. 

\begin{DoxyReturn}{Returns}
Number of P\+D\+Os. 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
\end{DoxyParams}


Definition at line 311 of file pdo\+\_\+list.\+c.

\mbox{\label{pdo__list_8c_a75bc7cee35f668b62965ba2c010b82dd}} 
\index{pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}!ec\+\_\+pdo\+\_\+list\+\_\+print@{ec\+\_\+pdo\+\_\+list\+\_\+print}}
\index{ec\+\_\+pdo\+\_\+list\+\_\+print@{ec\+\_\+pdo\+\_\+list\+\_\+print}!pdo\+\_\+list.\+c@{pdo\+\_\+list.\+c}}
\subsubsection{ec\+\_\+pdo\+\_\+list\+\_\+print()}
{\footnotesize\ttfamily void ec\+\_\+pdo\+\_\+list\+\_\+print (\begin{DoxyParamCaption}\item[{const \textbf{ ec\+\_\+pdo\+\_\+list\+\_\+t} $\ast$}]{pl }\end{DoxyParamCaption})}



Outputs the P\+D\+Os in the list. 


\begin{DoxyParams}{Parameters}
{\em pl} & P\+DO list. \\
\hline
\end{DoxyParams}


Definition at line 329 of file pdo\+\_\+list.\+c.

